Impedance matching is one of the design challenges facing the electronics industry due to multiple reflections on transmission lines, e.g., traces on a printed circuit board (PCB). Not limiting these multiple reflections can cause problems that can have an impact at the digital level, including increased delays, increased overshoot and increased ringing (i.e., oscillations) in the signal response. In particular for point to point signaling, it is important to match the driver impedance of the circuit to the impedance of the transmission line to which the circuit is coupled such that the incident wave is roughly half of the driven voltage. Accordingly, as is well known in the art, when the reflection occurs, the reflective wave is approximately the driven voltage and thereby eliminating undershoot and/or overshoot between the circuits connected by the transmission line.
One approach for matching the impedance between a circuit and the transmission line to which the circuit is coupled is to have an onboard controller on the circuit control the impedance. In such a system, the onboard controller periodically updates the impedance of the data output of the circuit to which the transmission line is connected. However, because the data output may be driving data at the point in time when the onboard controller completes the computation of the impedance and is attempting to update the impedance, changing of the impedance value at the data output of the circuit may be hazardous. In particular, if the impedance value at the data output is changing while the data output is transmitting data, intermediate values of the impedance are completely random and could result in values that are not close to the intended impedance for the data output.
One approach to avoid this type of hazard is to limit the updates of the impedance value at the data output such that the updates only occur during a tristated cycle. However, one shortcoming of this approach is that with a separate input/output circuit a tristate cycle may never occur as continuous reads could occur at the data output of the circuit to which the transmission line is connected. For these and other reasons there is a need for the present invention.